package presstrack
{
	import mx.collections.ArrayCollection;
	
	[RemoteClass(alias="presstrack.TrackClass")]
	
	[Bindable]
	public class TrackClass
	{
		public var obOrder:OrderClass;
	
		public var obStateOfPapers			:TrackStateClass;
		public var obStateOfImpos			:TrackStateClass;
		public var obStateOfCtp				:TrackStateClass;								
		public var obStateOfPress			:TrackStateClass;
		public var obStateOfCut				:TrackStateClass;
		public var obStateOfTermo			:TrackStateClass;
		public var obStateOfTheisenHorizon	:TrackStateClass;
		public var obStateOfLaminate		:TrackStateClass;
		public var obStateOfStanz			:TrackStateClass;
		public var obStateOfHand			:TrackStateClass;
		public var obStateOfPack			:TrackStateClass;
  		
		public function TrackClass(ob:Object = null)
		{
			if (ob != null)
			{
				setFrom(ob);
			}
		}
		
		public function setFrom(ob:Object):void 
		{
			obOrder = new OrderClass(ob.obOrder);
			
			obStateOfPapers		= new TrackStateClass(ob.obStateOfPapers);
			obStateOfImpos		= new TrackStateClass(ob.obStateOfImpos);
			obStateOfCtp		= new TrackStateClass(ob.obStateOfCtp);							
			obStateOfPress		= new TrackStateClass(ob.obStateOfPress);
			obStateOfCut		= new TrackStateClass(ob.obStateOfCut);
			obStateOfTermo		= new TrackStateClass(ob.obStateOfTermo);
			obStateOfTheisenHorizon	= new TrackStateClass(ob.obStateOfTheisenHorizon);
			obStateOfLaminate	= new TrackStateClass(ob.obStateOfLaminate);
			obStateOfStanz		= new TrackStateClass(ob.obStateOfStanz);
			obStateOfHand		= new TrackStateClass(ob.obStateOfHand);
			obStateOfPack		= new TrackStateClass(ob.obStateOfPack);
		}
	}
}